package cn.itcast.com.homework.day731;

import lombok.SneakyThrows;

import java.util.Scanner;

/*
2. 自己利用线程的第一种实现方式，实现如下功能(多线程引例)：

a. 程序不停地在屏幕上输出一句问候的语句(比如“你好”)
   (时间间隔一定要大些比如3s(或大于3s)，因为在控制台窗口，输入和输出不能同时发生，
   我们只能在两次输出“你好”的间隙，从键盘输入数据，才能保证键盘输入被正确接收)

b.同时，当我通过键盘输入固定响应的时候，程序停止向屏幕输出问候的语句
 */
public class test2 {
    static boolean flag = true;
    public static void main(String[] args) {
        MyThread1 myThread1 = new MyThread1();
        MyThread2 myThread2 = new MyThread2();
        //注意使用start，假如使用run的话，那么只是普通的方法
        myThread1.start();
        myThread2.start();
    }
    static class MyThread1 extends Thread{
        @SneakyThrows
        @Override
        public void run(){

            while (flag){
                System.out.println(flag);
                System.out.println("你好");
                Thread.sleep(3000);
            }
        }

    }
    static class MyThread2 extends Thread{
        @Override
        public void run(){
            Scanner scanner = new Scanner(System.in);
            String s = scanner.nextLine();
            while (true){
                if ("a".equals(s)){
                    flag = false;
                }
            }
        }
    }
}
